package demo;

import entity.Person;

import java.lang.reflect.Constructor;

public class Demo3 {
    public static void main(String[] args) throws NoSuchMethodException {
        Class clz= Person.class;

        //获取构造方法
        //getConstructor只能拿public修饰的
//        Constructor constructor=clz.getConstructor(String.class);
//        Constructor constructor=clz.getConstructor(String.class,Integer.class);
//        System.out.println(constructor);
        //getDeclaredConstructor可以拿任意访问修饰符修饰的构造方法
       /* Constructor constructor1=clz.getDeclaredConstructor(String.class,Integer.class);
        System.out.println(constructor1);*/

        //获取所有构造方法
        //getConstructors只能拿public修饰的构造方法
//        Constructor[] constructors=clz.getConstructors();
//        for (Constructor constructor : constructors) {
//            System.out.println(constructor);
//        }
        //getDeclaredConstructors可以获取所有任意修饰符修饰的构造方法
        Constructor[] constructors2=clz.getDeclaredConstructors();
        for (Constructor constructor : constructors2) {
            System.out.println(constructor);
        }
    }
}
